node的export和require的使用

您所在的位置:网站首页 node require和import区别 node的export和require的使用

node的export和require的使用

2023-09-20 20:49| 来源: 网络整理| 查看: 265

Node的exports和require的使用

 

方法1:使用exports.xx来导出

定义one.js

//node的导出用exports.xx和module.exports,导出用require //导出方法1 exports.xx var a = 1; var b = [1,2,3]; var c = {name:'小明'}; var f1=function(){     return '这是f1'; } exports.a=a; exports.b=b; exports.c=c; exports.f1=f1;

定义main.js

//导入one.js

var one = require('./one');

console.log(one.a);

console.log(one.b);

console.log(one.c);

console.log(one.f1);

在终端执行命令号node main.js,结果如下:

 

方法2:使用module.exports来导出

定义one.js

//node的导出用exports.xx和module.exports,导出用require

//导出方法2 module.exports

var a = 1;

var b = [1,2,3];

var c = {name:'小明'};

var f1=function(){

    return '这是f1';

};

module.exports={

    a,

    b,

    c,

    f1

}

定义main.js

//导入one.js

var one = require('./one');

console.log(one.a);

console.log(one.b);

console.log(one.c);

console.log(one.f1);

 

在终端执行命令号node main.js,结果如下:

由此可见,

共同点:Module.exports和exports.xx都可以导出单个对象。

区别:module.exports适合用于导出多个对象,exports.xx一次只能导出一个对象。一个js里面可多次使用exports.xx,一个js里面只有一个module.exports生效(即只能用一个module.exports).

定义one.js

//node的导出用exports.xx和module.exports,导出用require

//导出方法2 module.exports

var a = 1;

var b = [1,2,3];

module.exports = {a}

定义main.js

//导入one.js

var one = require('./one');

console.log(one.a);

在终端执行命令号node main.js,结果如下:

修改one.js,多次使用module.exports,会发现,最后一个module.exports会覆盖之前的module.exports.

One.js:

//node的导出用exports.xx和module.exports,导出用require

//导出方法2 module.exports

var a = 1;

var b = [1,2,3];

module.exports = {a}

module.exports = {b}

同样,定义main.js

//导入one.js

var one = require('./one');

console.log(one.a);

console.log(one.b);

执行node main.js,效果图:

可见,一个js里面只有一个module.exports生效。

在导入的时候是否需要使用{},这个问题可以看情况而定,记住,导入的是一个对象。

定义one.js

var a = 1;

var b = [1,2,3];

var f1 = function(){

    return "这是f1"

}

module.exports={

    a,

    b,

    f1

}

定义main.js

//导入one.js

var {a,b,f1} = require('./one');

console.log(a);

console.log(b);

console.log(f1);

执行node main.js,结果如下图1:

修改main.js

//导入one.js

var one = require('./one');

console.log(one.a);

console.log(one.b);

console.log(one.f1);

结果与图1一样,即在导入的时候看情况决定是否需要用{}。

 

注意:export和import 是es6的导入导出语法,主要用于导入导出模块。

export直接+变量名的时候,能导出多个命名模块。需要使用{},export对应的是import {name as name1} from ‘one’。

export default{},导出的是一个默认模块。对应的是import a1 from ‘one’,直接import +别名

一个js里面可有多个export,一个js里面只能有一个export default

//export用法

export var a = 1;

//以上相当于

var a = 1;

export {a};

//对应的导入是 import {a as a1} from 'one'

 

//export default用法

export default {}

//对应的导入是 import a1 from 'one'

 

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3